home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Commodore Disk User Volume 4 #1
/
Commodore_Disk_User_Vol.4_1_1990_-.d64
/
full disk jacket
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
9KB
|
284 lines
10 poke53280,14:poke646,14:poke53281,6
1000 rem******************************
1010 rem** full disk jacket **
1020 rem** **** **
1030 rem** use a gemini-10x **
1040 rem** to make your own jackets **
1050 rem** **** **
1060 rem** by mike gregory **
1070 rem** june 1990 **
1080 rem******************************
1090 :
1100 print"[147] full disk jacket"
1110 print" copyright mike gregory, 1990"
1120 print" make sure drive and printer are both switched on"
1130 print" insert disk and press any key when ready"
1140 geta$:ifa$=""goto1140
1150 :
1160 ifr=1goto1290
1170 dimcs(142,10),f$(300)
1180 print"***reading new characters"
1190 forch=0to141:fori=0to10:readcs(ch,i):nexti:nextch:rem new chars
1200 :
1210 fori=1to116:d$=d$+chr$(101):next:rem dashes
1220 fori=1to96:s$=s$+" ":next:rem spaces
1230 m1$=chr$(102)+left$(s$,8)+chr$(102)
1240 p$=m1$+" "+s$+" "+m1$
1250 m2$=left$(s$,10)+chr$(102)
1260 q$=m2$+s$+chr$(102)
1270 c$=left$(s$,33)+chr$(102)+left$(s$,28)+chr$(102)+left$(s$,33)
1280 :
1290 print"***reading disk directory"
1300 x=0:gosub2100:s1=j:rem read directory
1310 :
1320 s2=0
1330 print" are you processing a flippy (y/n)?"
1340 geta$:ifa$="n"thengoto1420
1350 ifa$<>"y"thengoto1340
1360 print" turn disk and press any key when ready"
1370 geta$:ifa$=""goto1370
1380 :
1390 print"***reading second directory"
1400 x=146:gosub2100:s2=j
1410 :
1420 open4,4,4:rem transparent mode
1430 :
1440 print"***setting printer"
1450 x=0:y=70:gosub2040:rem set up new chars
1460 print#4,chr$(27)chr$(71);:rem esc g - double strike
1470 print#4,chr$(27)chr$(65)chr$(6);:rem esc a 6 - 6/72 linefeed
1480 print#4,chr$(27)chr$(66)chr$(3);:rem esc b 3 - 17 cpi
1490 print#4,chr$(27)chr$(83)chr$(1);:rem esc s 1 - subscript mode
1500 print#4,chr$(97)+d$+chr$(98)
1510 print#4,p$:print#4,p$
1520 print#4,chr$(27)+chr$(65)+chr$(1)+p$
1530 print#4,chr$(27)+chr$(65)+chr$(5);:
1540 print#4,chr$(27)+chr$(84)+left$(s$,19)+"disk name:- "+left$(f$(0),17);:
1550 print#4," disk id:- "+mid$(f$(0),18,2);:
1560 print#4,left$(s$,11)+"blocks free:-"+f$(s1);:
1570 print#4,chr$(27)+chr$(83)+chr$(1)
1580 print#4,chr$(27)+chr$(65)+chr$(6)+p$
1590 print#4,p$
1600 print#4,m1$+left$(d$,98)+m1$
1610 print#4,m1$+" "+c$+" "+m1$
1620 i=0:m=(s1-1)/3
1630 i=i+1:ifi>mthen1660
1640 print#4,m1$+" "+f$(i)+" "+chr$(102)+" "+f$(m+i);:
1650 print#4," "+chr$(102)+" "+f$(2*m+i)+" "+m1$:goto1630
1660 print#4,m1$+" "+c$+" "+m1$:i=i+1:ifi<40then1660
1670 print#4,chr$(99)+d$+chr$(100)
1680 :
1690 ifs2<>0goto1750
1700 i=0
1710 print#4,q$:i=i+1:ifi<57then1710
1720 print#4,left$(s$,10)+chr$(99)+left$(d$,96)+chr$(100)
1730 goto1990
1740 :
1750 print"***fixing second directory"
1760 fori=0tos2-146:f$(i)="":fork=0tolen(f$(i+146))-1
1770 f$(i)=f$(i)+mid$(f$(i+146),len(f$(i+146))-k,1):nextk:nexti
1780 j=s2-146:s2=j:m=(s2-1)/3
1790 print"***resetting printer"
1800 x=71:y=141:gosub2040:i=0
1810 print#4,m2$+c$+chr$(102):i=i+1:ifi<50-mthen1810
1820 ifm=0then1860
1830 print#4,m2$+" "+f$(2*m+50-i)+chr$(102)+" ";:
1840 print#4,f$(m+50-i)+" "+chr$(102)+" "+f$(50-i)+" "+chr$(102)
1850 i=i+1:ifi<50goto1830
1860 print#4,m2$+c$+chr$(102)
1870 print#4,m2$+left$(d$,96)+chr$(102)
1880 print#4,q$:print#4,q$
1890 print#4,chr$(27)+chr$(65)+chr$(1)+q$
1900 print#4,chr$(27)+chr$(65)+chr$(5);:
1910 print#4,left$(s$,17)+chr$(27)+chr$(84);:
1920 print#4,f$(s2)+"-:eerf skcolb"+left$(s$,11);:
1930 print#4,mid$(f$(0),4,2)+" -:di ksid"+left$(s$,11);:
1940 print#4,right$(f$(0),17)+" -:eman ksid"+chr$(27)+chr$(83)+chr$(1)
1950 print#4,chr$(27)+chr$(65)+chr$(6)+q$
1960 print#4,q$
1970 print#4,left$(s$,10)+chr$(98)+left$(d$,96)+chr$(97)
1980 :
1990 close4:print" process another disk (y/n)?"
2000 geta$:ifa$="y"thenr=1:goto1100
2010 ifa$<>"n"goto2000
2020 end
2030 :
2040 forch=xtoy
2050 print#4,chr$(27)chr$(42)chr$(1);:rem esc b 1 - send new chars
2060 fori=0to10:print#4,chr$(cs(ch,i));:nexti:nextch
2070 print#4,chr$(27)chr$(36)chr$(1);:rem esc 6 1 - select new char set
2080 return
2090 :
2100 f=x
2110 open15,8,15,"i0":input#15,en$:close15:ifen$<>"00"thenj=0:return
2120 open8,8,0,"$0:*"
2130 get#8,a$,a$
2140 get#8,a$,a$,a$,b$
2150 ifstthen2240
2160 l$=str$(asc(a$+chr$(0))+256*asc(b$+chr$(0))):si$=l$
2170 get#8,a$:ifa$=""then2220
2180 ifa$=chr$(34)then2170
2190 a$=chr$(asc(a$)and127)
2200 ifasc(a$)>95orasc(a$)<32thena$=chr$(42):rem * if not printable
2210 l$=l$+a$:goto2170
2220 iff=xthenl$=right$(l$,len(l$)-len(si$)-1)
2230 f$(f)=left$(l$,25):f=f+1:goto2140
2240 close8
2250 :
2260 print" do you want to delete any filenames (y/n)?"
2270 geta$:ifa$="n"thenj=f-1:goto2340
2280 ifa$<>"y"goto2270
2290 print"":j=x+1:fori=x+1tof-2
2300 printf$(i)" d or cr?"
2310 geta$:ifa$=""then2310
2320 ifa$<>"d"thenf$(j)=f$(i):j=j+1
2330 next
2340 n=int((j-x-1)/3):if(j-x-1)=3*ngoto2380
2350 f$(j)=left$(s$,25):j=j+1:if(j-x-1)=3*(n+1)goto2380
2360 k=j:ford=2*n+2to(j-x-1):f$(k)=f$(k-1):k=k-1:nextd
2370 f$(k)=left$(s$,25):j=j+1
2380 f$(j)=left$(si$+" ",4):return
2390 :
2400 data 32,0,0,0,0,0,0,0,0,0,0
2410 data 33,0,0,0,0,0,79,0,0,0,0
2420 data 34,0,0,0,7,0,0,0,7,0,0
2430 data 35,0,20,20,127,20,20,20,127,20,20
2440 data 36,0,4,42,0,42,85,42,0,42,16
2450 data 37,0,3,64,35,16,8,4,98,1,96
2460 data 38,0,50,5,72,5,82,0,32,16,72
2470 data 39,0,0,0,5,0,3,0,0,0,0
2480 data 40,0,0,0,0,0,28,34,65,0,0
2490 data 41,0,0,0,65,34,28,0,0,0,0
2500 data 42,0,0,34,20,8,119,8,20,34,0
2510 data 43,0,8,0,8,0,62,0,8,0,8
2520 data 44,1,0,0,88,0,56,0,0,0,0
2530 data 45,0,8,0,8,0,8,0,8,0,8
2540 data 46,0,0,0,96,0,96,0,0,0,0
2550 data 47,0,0,64,32,16,8,4,2,1,0
2560 data 48,0,28,34,0,65,0,65,0,34,28
2570 data 49,0,0,0,66,0,127,0,64,0,0
2580 data 50,0,66,1,96,1,80,1,72,1,70
2590 data 51,0,33,0,65,0,69,0,75,0,49
2600 data 52,0,16,8,20,2,17,0,127,0,16
2610 data 53,0,39,64,5,64,5,64,5,64,57
2620 data 54,0,48,72,4,74,1,72,0,72,48
2630 data 55,0,1,0,65,32,17,8,5,2,1
2640 data 56,0,54,73,0,73,0,73,0,73,54
2650 data 57,0,6,9,0,9,64,41,16,9,6
2660 data 58,0,0,0,108,0,108,0,0,0,0
2670 data 59,1,0,0,0,91,32,27,0,0,0
2680 data 60,0,8,0,20,0,34,0,65,0,0
2690 data 61,0,20,0,20,0,20,0,20,0,20
2700 data 62,0,0,0,65,0,34,0,20,0,8
2710 data 63,0,2,1,0,1,80,1,8,1,6
2720 data 64,0,62,0,65,8,85,0,85,0,94
2730 data 65,0,120,4,18,1,16,1,18,4,120
2740 data 66,0,65,62,65,8,65,8,65,8,54
2750 data 67,0,62,65,0,65,0,65,0,65,34
2760 data 68,0,65,62,65,0,65,0,65,34,28
2770 data 69,0,127,0,73,0,73,0,73,0,65
2780 data 70,0,127,0,9,0,9,0,9,0,1
2790 data 71,0,62,65,0,65,8,65,8,65,56
2800 data 72,0,127,0,8,0,8,0,8,0,127
2810 data 73,0,0,0,65,0,127,0,65,0,0
2820 data 74,0,48,64,0,65,0,65,62,1,0
2830 data 75,0,127,0,8,0,20,0,34,0,65
2840 data 76,0,127,0,64,0,64,0,64,0,64
2850 data 77,0,127,0,2,4,8,4,2,0,127
2860 data 78,0,127,0,2,4,8,16,32,0,127
2870 data 79,0,62,65,0,65,0,65,0,65,62
2880 data 80,0,127,0,9,0,9,0,9,0,6
2890 data 81,0,62,65,0,65,0,81,32,65,62
2900 data 82,0,127,0,9,0,9,0,25,32,70
2910 data 83,0,38,73,0,73,0,73,0,73,50
2920 data 84,0,1,0,1,0,127,0,1,0,1
2930 data 85,0,63,64,0,64,0,64,0,64,63
2940 data 86,0,7,8,16,32,64,32,16,8,7
2950 data 87,0,63,64,32,16,8,16,32,64,63
2960 data 88,0,0,65,34,20,8,20,34,65,0
2970 data 89,0,1,2,4,8,112,8,4,2,1
2980 data 90,0,0,65,32,81,8,69,2,65,0
2990 data 91,0,0,0,127,0,65,0,65,0,0
3000 data 92,0,100,0,84,32,30,33,68,0,68
3010 data 93,0,0,0,65,0,65,0,127,0,0
3020 data 94,0,4,0,2,0,127,0,2,0,4
3030 data 95,0,8,20,42,65,8,0,8,0,8
3040 data 96,0,28,34,65,0,65,34,20,0,20
3050 data 97,0,0,0,0,0,120,0,8,0,8
3060 data 98,0,8,0,8,0,120,0,0,0,0
3070 data 99,0,0,0,0,0,15,0,8,0,8
3080 data 100,0,8,0,8,0,15,0,0,0,0
3090 data 101,0,8,0,8,0,8,0,8,0,8
3100 data 102,0,0,0,0,0,127,0,0,0,0
3110 data 32,0,0,0,0,0,0,0,0,0,0
3120 data 33,1,0,0,0,0,121,0,0,0,0
3130 data 34,1,0,0,112,0,0,0,112,0,0
3140 data 35,1,20,20,127,20,20,20,127,20,20
3150 data 36,1,4,42,0,42,85,42,0,42,16
3160 data 37,1,3,64,35,16,8,4,98,1,96
3170 data 38,1,9,4,2,0,37,80,9,80,38
3180 data 39,1,0,0,0,0,96,0,80,0,0
3190 data 40,1,0,0,65,34,28,0,0,0,0
3200 data 41,1,0,0,0,0,28,34,65,0,0
3210 data 42,1,0,34,20,8,119,8,20,34,0
3220 data 43,1,8,0,8,0,62,0,8,0,8
3230 data 44,0,0,0,0,0,14,0,13,0,0
3240 data 45,1,8,0,8,0,8,0,8,0,8
3250 data 46,1,0,0,0,0,3,0,3,0,0
3260 data 47,1,0,64,32,16,8,4,2,1,0
3270 data 48,1,28,34,0,65,0,65,0,34,28
3280 data 49,1,0,0,1,0,127,0,33,0,0
3290 data 50,1,49,64,9,64,5,64,3,64,33
3300 data 51,1,70,0,105,0,81,0,65,0,66
3310 data 52,1,4,0,127,0,68,32,20,8,4
3320 data 53,1,78,1,80,1,80,1,80,1,114
3330 data 54,1,6,9,0,9,64,41,16,9,6
3340 data 55,1,64,32,80,8,68,2,65,0,64
3350 data 56,1,54,73,0,73,0,73,0,73,54
3360 data 57,1,48,72,4,74,1,72,0,72,48
3370 data 58,1,0,0,0,0,27,0,27,0,0
3380 data 59,0,0,0,0,108,2,109,0,0,0
3390 data 60,1,0,0,65,0,34,0,20,0,8
3400 data 61,1,20,0,20,0,20,0,20,0,20
3410 data 62,1,8,0,20,0,34,0,65,0,0
3420 data 63,1,48,64,8,64,5,64,0,64,32
3430 data 64,1,61,0,85,0,85,8,65,0,62
3440 data 65,1,15,16,36,64,4,64,36,16,15
3450 data 66,1,54,8,65,8,65,8,65,62,65
3460 data 67,1,34,65,0,65,0,65,0,65,62
3470 data 68,1,28,34,65,0,65,0,65,62,65
3480 data 69,1,65,0,73,0,73,0,73,0,127
3490 data 70,1,64,0,72,0,72,0,72,0,127
3500 data 71,1,14,65,8,65,8,65,0,65,62
3510 data 72,1,127,0,8,0,8,0,8,0,127
3520 data 73,1,0,0,65,0,127,0,65,0,0
3530 data 74,1,0,64,62,65,0,65,0,1,6
3540 data 75,1,65,0,34,0,20,0,8,0,127
3550 data 76,1,1,0,1,0,1,0,1,0,127
3560 data 77,1,127,0,32,16,8,16,32,0,127
3570 data 78,1,127,0,2,4,8,16,32,0,127
3580 data 79,1,62,65,0,65,0,65,0,65,62
3590 data 80,1,48,0,72,0,72,0,72,0,127
3600 data 81,1,62,65,2,69,0,65,0,65,62
3610 data 82,1,49,2,76,0,72,0,72,0,127
3620 data 83,1,38,73,0,73,0,73,0,73,50
3630 data 84,1,64,0,64,0,127,0,64,0,64
3640 data 85,1,126,1,0,1,0,1,0,1,126
3650 data 86,1,112,8,4,2,1,2,4,8,112
3660 data 87,1,126,1,2,4,8,4,2,1,126
3670 data 88,1,0,65,34,20,8,20,34,65,0
3680 data 89,1,64,32,16,8,7,8,16,32,64
3690 data 90,1,0,65,32,81,8,69,2,65,0
3700 data 91,1,0,0,65,0,65,0,127,0,0
3710 data 92,1,17,0,17,66,60,2,21,0,19
3720 data 93,1,0,0,127,0,65,0,65,0,0
3730 data 94,1,16,0,32,0,127,0,32,0,16
3740 data 95,1,8,0,8,0,8,65,42,20,8
3750 data 96,1,20,0,20,34,65,0,65,34,28
3760 data 97,1,8,0,8,0,15,0,0,0,0
3770 data 98,1,0,0,0,0,15,0,8,0,8
3780 data 99,1,8,0,8,0,120,0,0,0,0
3790 data 100,1,0,0,0,0,120,0,8,0,8
3800 data 101,1,8,0,8,0,8,0,8,0,8
3810 data 102,1,0,0,0,0,127,0,0,0,0